package hot;

public class wuwu {
    /**
     * 动态
     */
//    public static boolean canJump(int[] nums) {
//        int n=nums.length;
//        boolean[] f=new boolean[n];
//        f[0]=true;
//        for(int i=1;i<n;i++){
//            for(int j=0;j<=i-1;j++){
//                if(nums[j]+j>=i&&f[j]){
//                    f[i]=true;
//                }
//            }
//        }
//        return f[n-1];
//
//    }

    /**
     * 贪心
     * @param nums
     * @return
     */
    public static boolean canJump(int[] nums) {
        int n=nums.length;
        int left=0;
        int right=0;
        int maxright=0;
        while(left<=right){
            if(maxright>=n-1){
                return true;
            }
            for(int i=left;i<=right;i++){
                maxright=Math.max(maxright,nums[i]+i);
            }
            left=right+1;
            right=maxright;

        }
        return false;

    }

    public static void main(String[] args) {
        int[] nums={2,0,0};
        boolean b = canJump(nums);
        System.out.println(b);

    }
}
